More particularly the invention relates to a fuzzy logic controller of the type described hereinabove and executed in the form of an analog integrated circuit.
The behaviour of a system may, in principle, be described by a set of "rules" or "functions", each of these "rules" defining, for a given situation, the behaviour of the system in a near future. The behaviour of a dynamic system will be completely described if the set of "rules" available defines its future behaviour on the basis of each of the possible given situations.
According to a conventional approach to the problem, a system is defined by a set of functions (generally functions of several variables). An electronic circuit designed to simulate or control this system, must be able to determine the values taken by these functions for each possible set of values for the input variables of these functions. In the case of particularly complex systems, this conventional approach is virtually impossible to implement using an analog circuit and its implementation by numerical means calls for enormous calculating power as soon as sufficiently accurate results are needed within a sufficiently short reaction time.
To cope with this problem of excessive complexity of the calculating operations a certain number of alternative approaches have been developed. Of these, the approaches developed on the basis of the formalism of fuzzy sets and of fuzzy logic are arousing growing interest. An introduction to fuzzy logic may notably be found in the monthly "La Recherche"--D. Dubois, H. Prade, LA RECHERCHE, 1308, 22, (1991).
Although the mode of operation of the electronic circuit of the instant invention is not fundamentally connected to the formalism of fuzzy logic and could very well be described without making reference thereto, we will use the vocabulary and the concepts commonly associated with this formalism to describe its operation.
In fuzzy logic, the rules of a system are essentially qualitative and are generally expressed in natural language by a statement of the type "IF condition, THEN conclusion" or in tabular form. The statement of a rule will, most generally, comprise several conditions and could present itself in the form of the type "IF X is A and Y is B, THEN Z is C" or of the type "IF X is A or Y is B, THEN Z is C", or also in the form of a complex expression obtained by combining the two above forms. The symbols A, B and C are linguistic terms in this case. One of the many advantages of this qualitative approach of fuzzy logic is that its implementation does not require any very complex or very accurate arithmetical operation.
To simulate (modelisation case) or control (specification case) a system described by rules such as those of fuzzy logic it is necessary to transpose these into numerically evaluable mathematical expressions and in such a way that the dynamics of the system, so described, correspond in satisfactory manner to the idea which a human being could form thereof on the basis of the normal rules of language. From the theoretical point of view, this transposition in quantitative terms can be made using the formalism of fuzzy sets and of fuzzy logic. The terms A, B and C figuring in the above rules will first of all be modelised by fuzzy sets or intervals. A fuzzy set permits the convenient representation of values more or less compatible with the description of a type of situation in which the system to be simulated or controled can be. A fuzzy set A is characterised by membership function .mu.A (x) that is able to assume values between 0 and 1; the membership function .mu.A (x) is the degree of compatibility of the value taken by the input variable X with the condition "X is A" or, in other words, .mu.A (x) is the degree of truth of the statement "X is A". FIGS. 1a, 1b, 1c and 1d represent examples of graphs of membership functions associated with fuzzy intervals.
In the case in which the premisses of a rule only comprise a single condition, knowledge of the value adopted by the membership function corresponding to this condition immediately determines the overall degree of membership or overall degree of truth of this rule. In the case in which the premisses of a rule comprise several conditions, the overall degree of truth of this rule is determined by combining amongst themselves the degrees of truth of each of the conditions. This operation of combining the degrees of truth or, that is to say of combining the membership functions, can be executed using fuzzy logic operations, such as the MIN operator and the MAX operator which correspond respectively to the terms "and" and "or" in natural language.
In known devices, whether these are constructed about a digital microprocessor or an analog integrated circuit, one evaluates the degree of pertinence of a rule by faithfully reproducing the process taught by the formalism of fuzzy logic. The integrated circuit therefore first evaluates the membership functions as a function of the particular values taken by the input variables Xi, which are associated with the different conditions in the premisses of the rule. Then, the device uses fuzzy logic gates, for examples the "MIN" and "MAX" gates corresponding to the two operators mentioned hereinabove, to evaluate on the basis of said values of the membership functions, the overall degree of truth of the set of conditions constituting the premisses of the rule. FIG. 2 shows a graph corresponding to the overall degree of truth of a rule having two conditions.
Associated to each rule is a set of output values which can either take the form of fuzzy intervals or of real numbers. Said values, supplied as a conclusion of the rule, correspond to predetermined values programmed some way or another into the device, and which are weighted as a function of the overall degree of truth of the premisses of the rule.
The behaviour of a system is most frequently determined by a whole set of rules, the respective degrees of pertinence of which must be simultaneously evaluated. In the simplest case, the input values of the system are such that there is only one rule, with premisses which prove to have a degree of truth different from zero, and the degree of truth of the other rules is zero. In a situation of this kind, one says that a single rule is active and the values of the output variables will be equal to said predetermined values corresponding to the conclusion of the active rule regardless of the degree of truth of the premisses thereof. On the other hand, it is also possible that the system is in an intermediate state, that is that its input variables assume values such as the conditions constituting the premisses of several adjacent rules each have a non zero degree of truth. In this case one says that several rules are active and the device determines the value of the output variables by weighting and averaging the predetermined values associated with the outputs of the various active rules. A process for determining a centre of gravity is often used to effect this weighting and averaging.
There are a number of defects in the method which has just been described for the implementation of rules. In particular, the evaluation of the overall degree of truth of the premisses of a rule by means of "Min" and "Max" gates, for example, is ill suited to implementation in the form of a compact analog circuit.
One object of the instant invention is therefore to overcome this disadvantage of the prior art.